1950년대ENIAC: 첫 번째 컴퓨터
운영체제가 없었다.
1개의 으용 프로그램을 시행시키기도 어려웠다.
응용 프로그램이 시스템 자원을 제어
1960년대 초기
프로그램 종류도 많아지고, 사용자도 많아지기 시작
배치 처리 시스템(batch processing system) 출현
여러 응용 프로그램을 등록시켜놓으면, 순차적으로 실행하는 시스템
배치 처리 시스템을 기반으로 운영체제가 출현
Batch Processing system자동으로 다음 응용 프로그램이 이어서 실행될 수 있도록 하는 시스템
1960년대 후반시분할 시스템(Time Sharing System)
멀티 태스킹(Multi Tasking)
(아이디어는 제시되었지만, 운영체제에 적용되지는 않았음)
시분할 시스템과 멀티 태스킹응용프로그램이 CPU를 사용하는 시간을 잘게 쪼개서, 여러 개의 응용 프로그램을 동시에 시행하는 기법
시분할 시스템: 다중 사용자를 지원하고, 컴퓨터 응답 시간을 최소화하는 시스템다중 사용자를 지원하기 위해서는 응답시간이 매우 짧아야 한다=멀티 태스킹
멀티 태스킹: 가능한 CPU를 많이 활용하도록 하는 기능(시간 대비 CPU 사용률을 높임)단일 CPU에서, 여러 응용 프로그램의 병렬 실행을 가능케 하는 시스템
멀티 프로그래밍: 최대한 CPU를 많이 활용하도록 하는 시스템(시간대비 CPU 활용도를 높임)시분할 시스템과 멀티 태스킹은 스케듈러가 관리한다.
배치 처리 시스템의 단점- 컴퓨터 응답시간(response time)이 오래 걸릴 수 있다.
- 실행 시간이 오래 걸릴 수 있다. (CPU가 필요 없음에도 응용 프로그램이 CPU를 차지할 수 있다.)
시분할 시스템과 배치 처리 시스템
-핵심 기술: 시간을 잘게 쪼갯 여러 응용 프로그램을 실행
- 컴퓨터 응답 시간을 줄일 수 있다.(시분할 시스템, 다중 사용자를 지원)
- 전체 응용 프로그램의 실행 시간도 줄일 수 있다.(멀티 프로그래밍-기술)
- 결과적으로 사용자가 느낄 떄에는, 여러 응용프로그램이 동시에 실행되는 것처럼 보인다.(멀티 태스킹)